package com.ccys.cms.service;

import com.ccys.common.vo.ResponseResult;
import com.ccys.db.dto.CommonDto;
import com.ccys.db.dto.web.base.RoleDto;
import com.ccys.db.entity.SysRole;
import com.ccys.db.rely.service.BaseService;

import javax.servlet.http.HttpServletRequest;

public interface CommonService  {


       /**
        * @description Base64 内容上传到S3
        * @date     2024/2/21
        * @author   cloud fly
        */
    ResponseResult putS3ObjectByBase64(HttpServletRequest request, CommonDto dto);

       /**
        * @description 文件流方式 上传文件到亚马逊S3服务器
        * @date     2024/2/21
        * @author   cloud fly
        */
    ResponseResult putS3ObjectByInputStream(HttpServletRequest request,  CommonDto dto);

       /**
        * @description 获取亚马逊S3 STS凭证
        * @date     2024/2/21
        * @author   cloud fly
        */
    ResponseResult getSTSInfo(CommonDto dto);

       /**
        * @description 为对象生成预签名上传 URL
        * @date     2024/2/22
        * @author   cloud fly
        */
    ResponseResult getUploadUrl(CommonDto dto);

       /**
        * @description 为对象生成预签名下载 URL
        * @date     2024/2/22
        * @author   cloud fly
        */
    ResponseResult getDownloadUrl(CommonDto dto);

       /**
        * @description 生成指定对象的id或code
        * @date     2024/2/26
        * @author   cloud fly
        */
    ResponseResult generateIdOrCode(HttpServletRequest request, CommonDto dto);
}
